package com.liming.common.pojo.dto.authinfo;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * @author liming
 * @date 2025/1/8
 */
@Data
@Schema(description = "用户名登录参数", requiredProperties = {"username", "password", "captchaId", "captcha"})
public class UsernameLoginDTO implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 用户名
     */
    @NotBlank
    @Schema(description = "用户名", requiredMode = Schema.RequiredMode.REQUIRED)
    private String username;

    /**
     * 密码
     */
    @NotBlank
    @Schema(description = "密码", requiredMode = Schema.RequiredMode.REQUIRED)
    private String password;

    /**
     * 验证码ID
     */
    @NotBlank
    @Schema(description = "验证码ID", requiredMode = Schema.RequiredMode.REQUIRED)
    private String captchaId;

    /**
     * 验证码
     */
    @NotBlank
    @Schema(description = "验证码", requiredMode = Schema.RequiredMode.REQUIRED)
    private String captcha;
}
